最近在做專案時,要將Android手機上的照出來的相片,上傳到伺服器端。研究了網路上不少的範例,測試了很久。最後,選擇用HttpURLConnection的元件通過類似Form架構,透過POST的方式要檔案上傳。
這一次的程式碼,比較長。所以,會分成比較多的章節來說明,首先,請在Android Studio 3.x版,新建一個專案。增加一個Empty Activity。Layout改成LinearLayout,再拉一個ImageView元件、二個Button元件、一個TextView元件,順序來排列出來。如下圖所示:
在完成拉好畫面後,首先,要先加網路的權限,打開manifests目錄下的AndroidManifest.xml,加入下述網路權限,如下圖所示:
<uses-permission android:name="android.permission.INTERNET" />
因為Android程式碼的部份比較長。所以先說明有關上傳檔案的PHP端的程式說明,完整的程式如下:
<?php
//設定上傳檔案到那個目錄。
$file_path = "upload/";
//上傳到目錄的檔案路徑及檔案名稱。
$file_path = $file_path . basename( $_FILES['uploaded_file']['name']);
//進行上傳的動作。
if(move_uploaded_file($_FILES['uploaded_file']['tmp_name'], $file_path)) {
echo "success";
} else{
echo "fail";
}
?>
後續,會對Android程式逐步的說明。